V tejto časti budeme vyšetrovať priebeh a kresliť graf najjednoduchšej kvadratickej funkcie, a to $$y = x^2$$
import numpy as np
%matplotlib inline
import matplotlib.pyplot as plt
from maux import *
Nakreslenie grafu kvadratickej funkcie.
# vstupné údaje
X = np.linspace(-3, 3)
Y = X ** 2
# obrázok
fig, ax = plt.subplots()
# inicializácia diagramu: vytvorí sa pravoúhla súradnicová sústava
init_subplot(ax)
ax.set_title("Graf funkcie $y = x^2$")
ax.plot(X, Y)
plt.show()
plt.close('all')
Tu nás zaujímajú tieto informácie:
Dokumentácia:
# vstupné údaje
def f(X): return X ** 2 # ufunc verzia funkcie
X = np.linspace(-3, 3)
X1 = X[X <= 0] # na tomto intervale je funkcia klesajúca
X2 = X[X >= 0] # na tomto intervale je funkcia rastúca
# obrázok
fig, ax = plt.subplots()
init_subplot(ax)
ax.set_title("Graf funkcie $y = x^2$")
ax.plot(X1, f(X1), label="klesajúca")
ax.plot(X2, f(X2), label="rastúca")
ax.plot(0, 0, 'ro', label="minimum")
ax.legend()
plt.show()
plt.close('all')
To isté ako v predchadzajúcom príklade, len analýza je rozdelená do dvoch častí.
# vstupné údaje
def f(X): return X ** 2
X = np.linspace(-3, 3)
X1 = X[X <= 0]
X2 = X[X >= 0]
# obrázok
fig, (ax1, ax2) = plt.subplots(nrows=1, ncols=2, sharex=True, sharey=True)
fig.set_size_inches(12, 4)
fig.suptitle("Graf funkcie $y = x^2$")
# 1. diagram
init_subplot(ax1)
ax1.plot(X, f(X))
# 2. diagram
init_subplot(ax2)
ax2.plot(X1, f(X1), label="klesajúca")
ax2.plot(X2, f(X2), label="rastúca")
ax2.plot(0, 0, 'ro', label="minimum")
ax2.legend()
plt.show()
plt.close('all')
# vstupné údaje
X = np.linspace(-3, 3)
Y = X ** 2
# obrázok
fig, ax = plt.subplots()
init_subplot(ax)
ax.set_title("Graf funkcie $y = x^2$")
ax.plot(X, Y)
# vyznačenie bodu A[2,4] na grafe
ax.plot(2, 4, 'ko')
ax.annotate("$A[2,4]$", xy=(2, 4), xytext=(2.2, 4)) # anotácia bodu
ax.plot([0, 2], [4, 4], 'k--', lw=1) # úsečka spájajúca body [0,4] a [2,4]
ax.plot([2, 2], [0, 4], 'k--', lw=1) # úsečka spájajúca body [2,0] a [2,4]
plt.show()
plt.close()
Konštrukcia dotyčnice grafu funkcie vo vybranom bode.
# vstupné údaje
X = np.linspace(-3, 3)
Y = X ** 2
Z = 4 * X - 4
# obrázok
fig, ax = plt.subplots()
init_subplot(ax)
ax.set_title("Graf funkcie $y = x^2$")
ax.plot(X, Y, label="graf funkcie")
ax.plot(X, Z, label="dotyčnica grafu v bode $x = 2$")
ax.plot([0, 2], [4, 4], 'k--', lw=1)
ax.plot([2, 2], [0, 4], 'k--', lw=1)
ax.legend()
plt.show()
plt.close()